package com.ruoyi.purchase.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 收料检验计划对象 inspection_plan
 * 
 * @author ruoyi
 * @date 2025-10-31
 */
public class InspectionPlan extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 检验计划ID */
    private Long id;

    /** 检验计划单号 */
    @Excel(name = "检验计划单号")
    private String planId;

    /** 收料通知单号 */
    @Excel(name = "收料通知单号")
    private String receiveId;

    /** 采购订单号 */
    @Excel(name = "采购订单号")
    private String poId;

    /** 存货编码 */
    @Excel(name = "存货编码")
    private String itemId;

    /** 批次号 */
    @Excel(name = "批次号")
    private String batch;

    /** 供应商编码 */
    @Excel(name = "供应商编码")
    private String vendorId;

    /** 检验状态：0-待检验，1-检验中，2-已完成 */
    @Excel(name = "检验状态：0-待检验，1-检验中，2-已完成")
    private Integer inspectionStatus;

    /** 检验人 */
    @Excel(name = "检验人")
    private String inspector;

    /** 检验结果：1-不合格，2-合格 */
    @Excel(name = "检验结果：1-不合格，2-合格")
    private Integer inspectionResult;

    /** 实际抽检数量 */
    @Excel(name = "实际抽检数量")
    private Long actualQuantity;

    /** 不合格数量 */
    @Excel(name = "不合格数量")
    private Long rejectQuantity;

    /** 合格数量 */
    @Excel(name = "合格数量")
    private Long qualifiedQuantity;

    /** 是否拒收：0-否，1-是 */
    @Excel(name = "是否拒收：0-否，1-是")
    private Integer isRejected;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createdPerson;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedAt;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setPlanId(String planId) 
    {
        this.planId = planId;
    }

    public String getPlanId() 
    {
        return planId;
    }

    public void setReceiveId(String receiveId) 
    {
        this.receiveId = receiveId;
    }

    public String getReceiveId() 
    {
        return receiveId;
    }

    public void setPoId(String poId) 
    {
        this.poId = poId;
    }

    public String getPoId() 
    {
        return poId;
    }

    public void setItemId(String itemId) 
    {
        this.itemId = itemId;
    }

    public String getItemId() 
    {
        return itemId;
    }

    public void setBatch(String batch) 
    {
        this.batch = batch;
    }

    public String getBatch() 
    {
        return batch;
    }

    public void setVendorId(String vendorId) 
    {
        this.vendorId = vendorId;
    }

    public String getVendorId() 
    {
        return vendorId;
    }

    public void setInspectionStatus(Integer inspectionStatus) 
    {
        this.inspectionStatus = inspectionStatus;
    }

    public Integer getInspectionStatus() 
    {
        return inspectionStatus;
    }

    public void setInspector(String inspector) 
    {
        this.inspector = inspector;
    }

    public String getInspector() 
    {
        return inspector;
    }

    public void setInspectionResult(Integer inspectionResult) 
    {
        this.inspectionResult = inspectionResult;
    }

    public Integer getInspectionResult() 
    {
        return inspectionResult;
    }

    public void setActualQuantity(Long actualQuantity) 
    {
        this.actualQuantity = actualQuantity;
    }

    public Long getActualQuantity() 
    {
        return actualQuantity;
    }

    public void setRejectQuantity(Long rejectQuantity) 
    {
        this.rejectQuantity = rejectQuantity;
    }

    public Long getRejectQuantity() 
    {
        return rejectQuantity;
    }

    public void setQualifiedQuantity(Long qualifiedQuantity) 
    {
        this.qualifiedQuantity = qualifiedQuantity;
    }

    public Long getQualifiedQuantity() 
    {
        return qualifiedQuantity;
    }

    public void setIsRejected(Integer isRejected) 
    {
        this.isRejected = isRejected;
    }

    public Integer getIsRejected() 
    {
        return isRejected;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setCreatedPerson(String createdPerson) 
    {
        this.createdPerson = createdPerson;
    }

    public String getCreatedPerson() 
    {
        return createdPerson;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("planId", getPlanId())
            .append("receiveId", getReceiveId())
            .append("poId", getPoId())
            .append("itemId", getItemId())
            .append("batch", getBatch())
            .append("vendorId", getVendorId())
            .append("inspectionStatus", getInspectionStatus())
            .append("inspector", getInspector())
            .append("inspectionResult", getInspectionResult())
            .append("actualQuantity", getActualQuantity())
            .append("rejectQuantity", getRejectQuantity())
            .append("qualifiedQuantity", getQualifiedQuantity())
            .append("isRejected", getIsRejected())
            .append("createdAt", getCreatedAt())
            .append("createdPerson", getCreatedPerson())
            .append("updatedAt", getUpdatedAt())
            .toString();
    }
}
